package com.xmtlxx.oms.domain.bo;

import com.xmtlxx.common.core.domain.BaseEntity;
import com.xmtlxx.common.core.validate.AddGroup;
import com.xmtlxx.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;

/**
 * 箱子业务对象 t_box
 *
 * @author xmtlxx
 * @date 2022-12-07
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("箱子业务对象")
public class BoxBo extends BaseEntity {

    /**
     * 主键ID
     */
    @ApiModelProperty(value = "主键ID")
    private String id;

    /**
     * 箱号
     */
    @ApiModelProperty(value = "箱号", required = true)
    @NotBlank(message = "箱号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String boxNo;

    /**
     * 类型
     */
    @ApiModelProperty(value = "类型", required = true)
    @NotBlank(message = "类型不能为空", groups = { AddGroup.class, EditGroup.class })
    private String type;

    /**
     * 当前所在部门
     */
    @ApiModelProperty(value = "当前所在部门")
    private Long deptId;

    /**
     * 创建部门
     */
    @ApiModelProperty(value = "创建部门")
    private Long createDept;

    /**
     * 型号
     */
    @ApiModelProperty(value = "型号")
    private String model;

    /**
     * 规格
     */
    @ApiModelProperty(value = "规格")
    private String specs;

    /**
     * 用途
     */
    @ApiModelProperty(value = "用途")
    private String purpose;

    /**
     * 状态(0-待使用,1-已使用)
     */
    @ApiModelProperty(value = "状态(0-待使用,1-已使用)", required = true)
    @NotBlank(message = "状态(0-待使用,1-已使用)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String status;

    /**
     * 删除标识
     */
    @ApiModelProperty(value = "删除标识")
    private String delFlag;

    @ApiModelProperty("排序")
    private Integer seq;

    private Integer startNo;

    private Integer endNo;

    /**
     * 货箱名称
     */
    @ApiModelProperty("货箱名称")
    private String name;
    /**
     * RFID
     */
    @ApiModelProperty("RFID")
    private String rfid;
    /**
     * 附件
     */
    @ApiModelProperty("附件")
    private String pics;
}
